package com.y3k.excel.utils.exporter
{
	import com.as3xls.xls.Sheet;
	
	public class ExcelExportParams
	{
		//------------------------------
		// Variables
		//------------------------------
		/**
		 * 
		 * Listado de columnas extras (a colocar antes de las columnas que indica la propiedad colsValues)
		 * Por lo general se la utiliza cuando se exporta directamente desde un grid o un chart. 
		 * Formato:
		 * [new ExcelExportParaValue("header", "value")]
		 * 
		 */
		[ArrayElementType("com.kcc.tempos.utils.exporter.interfaces.IExcelExportParamValue")] 
		public var extraDataBefore:Array;
		
		/**
		 * 
		 * Listado de columnas extras (a colocar luego de las columnas que indica la propiedad colsValues)
		 * Por lo general se la utiliza cuando se exporta directamente desde un grid o un chart. 
		 * Formato:
		 * [new ExcelExportParaValue("header", "value")]
		 * 
		 */
		[ArrayElementType("com.kcc.tempos.utils.exporter.interfaces.IExcelExportParamValue")]
		public var extraDataAfter:Array;
		
		/**
		 * 
		 * Listado de objetos que indican cual es el nombre de la columna
		 * y que propiedad del objeto se utiliza para sacar los datos de la misma
		 * Formato:
		 * [new ExcelExportParaValue("header", "value")]
		 * 
		 */
		[ArrayElementType("com.kcc.tempos.utils.exporter.interfaces.IExcelExportParamValue")]
		public var colsValues:Array;
		
		/**
		 * 
		 * Sheet de la libreria de escritura de Excel. Se setea si se le desea que carge datos
		 * a desde una hoja ya creada y no cree una nueva.
		 * 
		 */
		public var sheet:Sheet;
		
		/**
		 * 
		 * Fila de inicio por el cual se comienza a completar las celdas del Excel.
		 * 
		 */
		public var rowInit:Number = 0;
		
		/**
		 * 
		 * Columna de inicio por el cual se comienza ac ompeltar las celdas del Excel
		 * 
		 */
		public var colInit:Number = 0;
		
		/**
		 * 
		 * Titulo a agregar antes de comenzar a llegar el Excel
		 * 
		 */ 
		public var title:String;
		
		//------------------------------
		// Constructor
		//------------------------------
		/**
		 * 
		 * Constructor de la clase
		 * 
		 * @param colsValues		Array a agregar a la propiedad colsValues
		 * 
		 */
		public function ExcelExportParams(colsValues:Array = null)
		{
			this.colsValues = colsValues;
		}

	}
}